Client-server communications, among other types of communications, may oftentimes be partially controlled or otherwise affected by third-parties to the communications. For example, communications between a user device, such as a smartphone, and a web server may be subject to restrictions placed by an Internet service provider or a wireless carrier. The third-parties may have various devices that are placed on a communication path between the client and the server. For example, third-party controlled routers may be used to route traffic between the user device and the web server. The third-parties may leverage their partial control or ownership of the communications link to enforce various policies. For example, a third-party may enforce bandwidth usage restrictions on data exchanged between a user device and a web server. The restrictions may cause some features that are sought by clients to become unavailable.
Accordingly, it is often challenging to provide a client with detailed information specifying a reason behind certain features being unavailable to the client. Typically, users affected by policy enforcement are subject to poor performance without knowing whether the poor performance is due to a temporary glitch, whether the poor performance is due to the user's device or another device and, generally, what actions, if any, can or should be taken. It is also challenging to provide the information when a communication link used by the client is subject to being blocked by a third-party actor.